<!DOCTYPE html>
<!--
@AURALINUX-DENY:NAME-CHANGED*
@AURALINUX-DENY:STATE-CHANGE:DEFUNCT*
@AURALINUX-DENY:TEXT-REMOVE*
@MAC-DENY:AXTitleChanged*
@WIN-DENY:EVENT_OBJECT_LOCATIONCHANGE*
@WIN-DENY:EVENT_OBJECT_REORDER*
@WIN-DENY:IA2_EVENT_TEXT*
-->
<html>
<body>
<div role="textbox" aria-label="role only, rich">
  foo <button id="btn1">ok</button>
</div>
<div role="textbox" tabindex="0" aria-label="focusable">
  foo <button id="btn2">ok</button>
</div>
<div role="textbox" contenteditable aria-label="editable">
  foo <button id="btn3">ok</button>
</div>
<div id="txt4" role="textbox" aria-label="role only, plain">foo</div>
<button id="btn4">ok</button>
<script>
  var go_passes = [
    () => document.getElementById("btn1").remove(),
    () => document.getElementById("btn2").remove(),
    () => document.getElementById("btn3").remove(),
    () => document.getElementById("txt4").appendChild(document.getElementById("btn4")),
  ];

  var current_pass = 0;
  function go() {
    go_passes[current_pass++].call();
    return current_pass < go_passes.length;
  }
</script>
</body>
</html>
